﻿using System;
using System.Collections.Generic;

namespace CRM.Database.Model
{
    public partial class Equipments : ISetChangedUser, IGetKeyValue, IGetNamesValues
    {
        #region Implementation of ISetChangedUser

        /// <summary>
        /// Установка пользователя, который сделал изменение
        /// </summary>
        /// <param name="userLogin">Логин пользователя</param>
        public void SetChangedUser(string userLogin)
        {
            if (string.IsNullOrEmpty(userLogin))
                throw new Exception("Логин пользователя не может быть пустым");
            IdUser = userLogin;
        }

        #endregion

        /// <summary>
        /// локализованное имя типа оборудования
        /// </summary>
        public string EquipmentTypeNameLocalized
        {
            get { return EquipmentTypes != null ? EquipmentTypes.LocalizedName : " "; }
        }


        /// <summary>
        /// название вендора
        /// </summary>
        public string VendorNameExt
        {
            get
            {
                if (Vendors != null)
                {
                    if (Vendors.VendorName != null)
                        return Vendors.VendorName;
                }
                return " ";
            }
        }

        #region Implementation of IGetKeyValue

        /// <summary>
        /// Получение ключего значения элемента
        /// </summary>
        /// <returns>Ключевое значение</returns>
        public int GetKeyValue()
        {
            return IdEquipment;
        }

        #endregion

        #region Implementation of IGetNamesValues

        /// <summary>
        /// Получение списка имён
        /// </summary>
        /// <returns>Список имён</returns>
        public List<string> GetNamesValues()
        {
            var list = new List<string>();
            list.Add(Model);
            return list;
        }

        #endregion
    }
}